package com.yunxi.vip.pojo;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.yunxi.activiti.pojo.ActivitiVO;
import com.yunxi.bizToBaseData.pojo.AttachReqVO;
import com.yunxi.core.web.DateJsonDeserializer;
import com.yunxi.sys.pojo.AttachVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * Created by chenmeng on 2019/9/6.
 */
@Data
public class VipApplyVO implements Serializable {

    @ApiModelProperty(value = "申请单主键")
    private String applyId;

    @ApiModelProperty(value = "客户id")
    private String vipId;

    @ApiModelProperty(value = "客户名称")
    private String vipName;

    @ApiModelProperty(value = "客户编号")
    private String vipNo;

    @ApiModelProperty(value = "标题")
    private String title;

    @ApiModelProperty(value = "客户类型")
    private Integer vipType;

    @ApiModelProperty(value = "联系人")
    private String mainLinkman;

    @ApiModelProperty(value = "联系人电话")
    private String mainPhone;

    @ApiModelProperty(value = "详细地址")
    private String vipAddr;

    @ApiModelProperty(value = "渠道商")
    private String partnerCode;

    private String partnerName;

    @ApiModelProperty(value = "业务类型")
    private String businessType;

    private String businessTypeCn;

    @ApiModelProperty(value = "购车用途")
    private String purpose;

    @ApiModelProperty(value = "区域")
    private String region;

    @ApiModelProperty(value = "车系")
    private String seriesName;

    @ApiModelProperty(value = "1厂0店")
    private Integer submitType;

    @ApiModelProperty(value = "报备日期")
    private Date submitDate;

    @ApiModelProperty(value = "提报人")
    private String submitUser;

    @ApiModelProperty(value = "状态")
    private Integer status;

    @ApiModelProperty(value = "细节描述")
    private String memo;

    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonDeserialize(using= DateJsonDeserializer.class)
    private Date createTime;

    @ApiModelProperty(value = "总数量")
    private Integer vcount;

    @ApiModelProperty(value = "总金额")
    private BigDecimal amount;

    @ApiModelProperty(value = "清单列表")
    private List<VipApplyDetailVO> listDetail;

    private String taskId;

    private String instanceId;

    private ActivitiVO activitiVO = new ActivitiVO();

    private Date dealTime;

    @ApiModelProperty(value = "附件")
    private List<AttachReqVO> attachVOList = new ArrayList<AttachReqVO>();

    private BigDecimal discount;
    private BigDecimal specialDiscount;

    private BigDecimal discountAmount;

    private String partnerFinancial;
    private String partnerFinancialName;

    private String roleCode;

    private String startDate;

    private String endDate;

    private String applyNo;

    private String auditUserId;

    private String partnerCodeNot;

    private String payway;

    private String op;
}
